Quad4 Git (Main)
>electron-updater-rns
Currently Experimental!!!
Optional auto-updates for Electron apps over Reticulum. Works with T383838electron-updater and standard T383838electron-builder output.
Differential downloads are supported when blockmap files are published.
Requirements
• Node.js with T383838electron and T383838electron-updater
• Python 3 with T383838rns installed
• A working Reticulum config
Install
T282828
npm install electron-updater-rns
pip install ./python
Publish updates
Build your app with T383838electron-builder, then copy the output to a local directory your publishing peer can read.
T282828
rns-update-server publish --source ./release --target ./updates
Include T383838latest.yml (or platform channel files), installers, and T383838.blockmap files.
Run a publishing peer
Start a peer that announces your update destination and serves files to the network.
T282828
rns-update-server serve --dir ./updates --identity ./publisher.identity
Save the destination hash printed on first run. Receiving peers need this hash to link to your update destination.
Use in Electron
Your app runs a local Python sidecar that talks to Reticulum on its behalf. The sidecar links to the publishing peer and pulls updates over the network.
T282828
import { app } from "electron";
import { createReticulumUpdater, stopReticulumUpdater } from "electron-updater-rns";
const updater = createReticulumUpdater({
destination: "publisher_destination_hash",
enabled: process.env.RNS_UPDATES === "1",
}, app);
if (updater) {
updater.checkForUpdatesAndNotify();
app.on("before-quit", () => {
stopReticulumUpdater(updater);
});
}
Dump your HTTP updater and use RNS when you want updates over the mesh.
Layout
• T383838python/ publishing peer and receiving sidecar
• T383838packages/electron-updater-rns/ npm package
License
0BSD.
Served by rngit 1.4.1 - Generated in 0.03s